
Security News
Next.js Patches Critical Middleware Vulnerability (CVE-2025-29927)
Next.js has patched a critical vulnerability (CVE-2025-29927) that allowed attackers to bypass middleware-based authorization checks in self-hosted apps.
@bufbuild/protobuf
Advanced tools
A complete implementation of Protocol Buffers in TypeScript, suitable for web browsers and Node.js.
@bufbuild/protobuf is an npm package that provides tools for working with Protocol Buffers (protobufs) in JavaScript and TypeScript. It allows you to define, serialize, and deserialize structured data efficiently.
Define Protobuf Messages
This feature allows you to define protobuf messages using JavaScript classes. The `@Field.d` decorator is used to specify the field number and type.
const { Message, Field } = require('@bufbuild/protobuf');
class Person extends Message {
@Field.d(1, 'string')
name = '';
@Field.d(2, 'int32')
age = 0;
}
const person = new Person({ name: 'John Doe', age: 30 });
console.log(person);
Serialize Protobuf Messages
This feature allows you to serialize a protobuf message into a binary format. The `encode` method is used to convert the message into a buffer.
const { Message, Field } = require('@bufbuild/protobuf');
class Person extends Message {
@Field.d(1, 'string')
name = '';
@Field.d(2, 'int32')
age = 0;
}
const person = new Person({ name: 'John Doe', age: 30 });
const buffer = Person.encode(person).finish();
console.log(buffer);
Deserialize Protobuf Messages
This feature allows you to deserialize a binary buffer back into a protobuf message. The `decode` method is used to convert the buffer back into a message object.
const { Message, Field } = require('@bufbuild/protobuf');
class Person extends Message {
@Field.d(1, 'string')
name = '';
@Field.d(2, 'int32')
age = 0;
}
const buffer = new Uint8Array([10, 8, 74, 111, 104, 110, 32, 68, 111, 101, 16, 30]);
const person = Person.decode(buffer);
console.log(person);
protobufjs is a popular library for working with Protocol Buffers in JavaScript. It provides similar functionalities to @bufbuild/protobuf, such as defining, serializing, and deserializing protobuf messages. However, protobufjs has been around longer and has a larger user base.
google-protobuf is the official Protocol Buffers library for JavaScript provided by Google. It offers core functionalities for working with protobufs, including message definition, serialization, and deserialization. Compared to @bufbuild/protobuf, google-protobuf is more closely aligned with Google's protobuf ecosystem.
This package provides the runtime library for the protoc-gen-es code generator plugin.
A complete implementation of Protocol Buffers in TypeScript, suitable for web browsers and Node.js, created by Buf.
Protobuf-ES is a solid, modern alternative to existing Protobuf implementations for the JavaScript ecosystem. It's the first project in this space to provide a comprehensive plugin framework and decouple the base types from RPC functionality.
Some additional features that set it apart from the others:
npm install @bufbuild/protobuf
To learn how to work with @bufbuild/protobuf
, check out the docs for the Runtime API
and the generated code.
Official documentation for the Protobuf-ES project can be found at github.com/bufbuild/protobuf-es.
For more information on Buf, check out the official Buf documentation.
A complete code example can be found in the Protobuf-ES repo here.
FAQs
A complete implementation of Protocol Buffers in TypeScript, suitable for web browsers and Node.js.
The npm package @bufbuild/protobuf receives a total of 1,682,760 weekly downloads. As such, @bufbuild/protobuf popularity was classified as popular.
We found that @bufbuild/protobuf demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 7 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Next.js has patched a critical vulnerability (CVE-2025-29927) that allowed attackers to bypass middleware-based authorization checks in self-hosted apps.
Security News
A survey of 500 cybersecurity pros reveals high pay isn't enough—lack of growth and flexibility is driving attrition and risking organizational security.
Product
Socket, the leader in open source security, is now available on Google Cloud Marketplace for simplified procurement and enhanced protection against supply chain attacks.